﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MJM.SCA.EntidadesNegocio;
using MJM.RPP.EntidadesNegocio;
using MJM.Principal;
using MJM.SPP.EntidadesNegocio;

namespace wRegPadron.frmOpciones
{
    public partial class ucProxy : System.Web.UI.UserControl
    {
        protected void Listar()
        {
            List<ProxysEN> lst = MediadorCN.GetProxysCN().Listar();
            cbTipo.Visible = true;
            for (int i = 0; i < lst.Count; i++)
            {
                if (lst[i].SERPRO_inTIPPRO == 1)
                {
                    cbTipo.Visible = false;
                    cbTipo.Checked = false;
                    break;
                }
            }
            gvProxys.DataSource = lst;
            gvProxys.DataBind();
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                SubOpcionEN objSubOpcionEN = MediadorCN.GetSubOpcion().ObtenerTexto("MenuProxy");
                lblTitulo.Text = objSubOpcionEN.SUBOPT_chNOMSOP;
                lblDescripcion.Text = objSubOpcionEN.SUBOPT_chDESSOP;
                Listar();
            }
        }

        protected void btnGuardar_Click(object sender, EventArgs e)
        {
            ProxysEN objProxysEN = new ProxysEN();
            if (cbTipo.Checked)
                objProxysEN.SERPRO_inTIPPRO = 1;
            else
                objProxysEN.SERPRO_inTIPPRO = 0;
            objProxysEN.SERPRO_chDIRSER = txtProxy.Text;
            objProxysEN.SERPRO_chPUESER = txtPuerto.Text;
            MediadorCN.GetProxysCN().Insertar(objProxysEN);
            txtProxy.Text = "";
            txtPuerto.Text = "";
            Listar();
        }

        protected void gvProxys_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            int id;
            GridViewRow row = gvProxys.Rows[Convert.ToInt32(e.CommandArgument)];
            id = Convert.ToInt32(Server.HtmlDecode(row.Cells[0].Text));
            if (e.CommandName == "Eliminar")
            {
                int result = 0;
                result = MediadorCN.GetProxysCN().Eliminar(id);
                if (result > 0)
                    Listar();
            }
        }
    }
}